iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 16
0
AI & Data

人工智慧(RL系列) 完爆遊戲30天系列 第 16

Day16 損失&優化函數

  • 分享至 

  • xImage
  •  

哈囉大家~我們今天把最後的損失跟優化函數講完。這章節聽完的讀者,不一定要侷限RL,學到的知識也可以放在其他影像辨識專案上,官網提供了些範例程式碼,有空就去晃晃吧~傳送門

損失函數

損失函數是神經網路定義要收斂的對象函數。因為龐大的參數節點,可以擬合任意函數,我們可以不用知道權重跟bias的值明確要設多少,但可以靠反向傳播做梯度下降,讓函數逐步收斂,直到逼近最低點(global minimum)。這裡我們用均方差,差值做平方,加總再除於總樣本數量。
https://ithelp.ithome.com.tw/upload/images/20191001/20121110YGHnolTE2D.png
無法把loss明確定義,那就等於無法擬合函數,實際的loss function設計要看你想做什麼事情,以前筆者做OCR檢測,其中的損失函數有摻雜機率學理論,至於其他的損失函數則可參考 https://keras.io/losses/#usage-of-loss-functions ,但讀者也不需要看到公式就嚇得趕緊關掉電腦,馬上躲進棉被裡,很多損失函數很直覺的(和藹的),例如剛介紹的均方差,以及視覺辨識常用到的IOU(https://www.pyimagesearch.com/2016/11/07/intersection-over-union-iou-for-object-detection/)。
這邊做補充,我們之前介紹的q估計跟q現實就是裡面y值跟y-hat值,兩個差異最小化,就是我們期望能收斂的Q-function。

優化函數

網路模型在學習的時候會有α值叫學習率,它是負責控制梯度的收斂程度,如果單次更新α值過高,收斂方向的速度就會變快,你說越快不是越好嗎?不一定,梯度下降的收斂過程就像走小山丘,太大會暴衝會不穩,太小收斂會太慢,或是卡在局部解(local minimum)而跨不出來了。為了讓α更smart,就會採取像Adam的優化函數來控制α。

結語

讀者可先了解概念跟重要參數,對於底層不理解一開始不用太糾結。由淺至深慢慢學習,對於概念懂了就會想懂原理,原理了解會想手算,手算完如果能舉一反三會更有成就感。身旁或許沒有大牛(像李弘毅老師),不過筆者推薦NNDesign,原理介紹很清楚還搭配紮實的課堂練習。好哩今天介紹到這,大家明天見拉~


上一篇
Day15 keras layers(下)
下一篇
Day17 DQN model
系列文
人工智慧(RL系列) 完爆遊戲30天30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言